package fr.uniscol.siecle.dao.mapper;

import java.sql.ResultSet;
import java.sql.SQLException;

import org.springframework.jdbc.core.RowMapper;

import fr.uniscol.siecle.model.AnneeScolaire;
import fr.uniscol.siecle.model.Communs;
import fr.uniscol.siecle.model.Parametres;
import fr.uniscol.siecle.model.UAJ;

public class DonneesSIECLECommunsRowMapper implements RowMapper<Communs> {

	@Override
	public Communs mapRow(ResultSet rs, int rowNum) throws SQLException {
		
		Communs communs = new Communs();
		communs.setParametres(new Parametres());
		communs.getParametres().setUaj("0310000T");
		
		UAJ uaj = new UAJ();
		communs.setAnneeScolaire(new AnneeScolaire());
		communs.setAnneeScolaireAD(new AnneeScolaire());
		
		uaj.setEtab_uaj_id(rs.getString("ETAB_UAJ_ID"));
		uaj.setNum_siren(rs.getString("NUM_SIREN"));
		uaj.setDenom_principale(rs.getString("DENOM_PRINC"));
		uaj.setDenom_complete(rs.getString("DENOM_COMPL"));
		uaj.setNom_responsable(rs.getString("NOM_RESP"));
		uaj.setQual_responsable(rs.getString("QUAL_RESP"));
		uaj.setLigne_adresse_1(rs.getString("LIGNE_ADRESSE_1"));
		uaj.setLigne_adresse_2(rs.getString("LIGNE_ADRESSE_2"));
		uaj.setLigne_adresse_3(rs.getString("LIGNE_ADRESSE_3"));
		uaj.setBoite_postale(rs.getString("BOITE_POSTALE"));
		uaj.setCommune_etrangere(rs.getString("COMMUNE_ETG"));
		uaj.setTelephone(rs.getString("TELEPHONE"));
		uaj.setEmail_1(rs.getString("EMAIL_1"));
		uaj.setCode_type_etab(rs.getString("CODE_TYPE_ETAB"));
		uaj.setCode_secteur(rs.getString("CODE_SECTEUR"));
		uaj.setCode_postal(rs.getString("CODE_POSTAL"));
		uaj.setCode_commune_insee(rs.getString("CODE_COMMUNE_INSEE"));
		uaj.setCode_pays(rs.getString("CODE_PAYS"));
		communs.setUaj(uaj);
		
		communs.getAnneeScolaire().setDate_debut_eleves(rs.getString("AS_DEBUT_ELEVES"));
		communs.getAnneeScolaire().setDate_fin_eleves(rs.getString("AS_FIN_ELEVES"));
		communs.getAnneeScolaire().setDate_debut_profs(rs.getString("AS_DEBUT_PROFS"));
		communs.getAnneeScolaire().setDate_fin_profs(rs.getString("AS_FIN_PROFS"));

		communs.getAnneeScolaireAD().setDate_debut_eleves(rs.getString("ASAD_DEBUT_ELEVES"));
		communs.getAnneeScolaireAD().setDate_fin_eleves(rs.getString("ASAD_FIN_ELEVES"));
		communs.getAnneeScolaireAD().setDate_debut_profs(rs.getString("ASAD_DEBUT_PROFS"));
		communs.getAnneeScolaireAD().setDate_fin_profs(rs.getString("ASAD_FIN_PROFS"));
		
		return communs;
	}

}
